# 作者：一只牛吗
# 2025 年02月 04日 01时 54分 26秒
# 1278599690@qq.com
class MusicPlayer:
    instance = None  # 用来保存对象的

    def __new__(cls, *args, **kwargs):
        '''
        创建对象分配内存空间
        :param args:
        :param kwargs:
        '''
        if cls.instance == None:
            cls.instance = super().__new__(cls)
        return cls.instance

    def __init__(self, name):
        self.name = name


if __name__ == '__main__':
    player1 = MusicPlayer('七里香')
    player2 = MusicPlayer('东风破')
    print(id(player1))
    print(id(player2)) # 打印两个对象的内存地址，相同，说明是同一个对象, 单例模式实现成功
